package com.example.shardingjdbc.dao;

import com.example.shardingjdbc.model.po.OperationLogPo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.time.LocalDate;
import java.util.Date;
import java.util.List;

/**
 * @Description: 操作日志mapper
 * @Author: Jerry
 * @Date: 2021-08-02 23:06
 */
@Mapper
@Repository
public interface OperLogMapper {
    /**
     * 插入操作日志
     * @param operationLogPo 操作日志
     */
    void insertOperLog(OperationLogPo operationLogPo);

    /**
     * 根据创建日期查找操作日志
     * @param createTime 创建日期
     * @return 操作日志列表
     */
    List<OperationLogPo> getOperLogsByCreateTime(@Param("createTime") Date createTime);

    /**
     * 根据起止日期查询操作日志
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return 操作日志列表
     */
    List<OperationLogPo> getOperLogsByCreateTimeRange(@Param("startTime") Date startTime,
                                                      @Param("endTime")Date endTime);
}
